A multiple-input multiple-output (MIMO) system in which wireless communication is performed by using a plurality of transmission and reception antennas achieves a high transmission rate. However, in order to achieve a high transmission rate, it is necessary to accurately separate and detect transmission-signal interferences from received signals. A maximum likelihood detection (MLD) method can be used to obtain the most excellent property, but it requires a large amount of calculation because of its complicated process. Therefore, a QRM-MLD process has been proposed as a practical approximation process.
According to a technology described in JP 2006-121348 A, two types of channel matrices both indicating impulse responses of transmission channels are prepared so as to have different element orders (for example, ascending order and descending order), the QRM-MLD process is performed using the channel matrices, and results obtained through the QRM-MLD process are combined, thereby improving the quality of a solution though the amount of calculation increases.
According to a technology described in “A multi-QR-decomposition assisted group detection algorithm for MIMO-OFDM”, Ryota Kimura, Ryuhei Funada, Hiroshi Harada, and Shigeru Shimamoto, pp. 115-120, RCS2006-124, August 2006, Technical committee on radio communication systems, the Institute of Electronics, Information and Communication Engineers (IEICE), three or more types of channel matrices having different element orders are prepared and the QRM-MLD process is performed using the channel matrices.
Referring to FIGS. 7 and 8, a conventional QRM-MLD process will be described.
FIG. 7 is a configuration diagram of a QRM-MLD process unit that executes the conventional QRM-MLD process.
The QRM-MLD process unit includes an each-channel estimation unit 71, a channel matrix generation unit 72, a QR decomposition process unit 73, a signal conversion unit 74, and an MLD process unit 75.
The each-channel estimation unit 71 estimates a channel impulse response of each propagation channel by using a known pilot signal.
The channel matrix generation unit 72 generates a channel matrix having the channel impulse responses estimated by the each-channel estimation unit 71, as matrix elements.
The QR decomposition process unit 73 applies QR decomposition to the channel matrix generated by the channel matrix generation unit 72. For example, when the number of transmission antennas is four and the number of reception antennas is four, the relationship between transmission signals and reception signals is R=HT expressed by the following formula.
                    Formula  1                                                                      [                                                                      r                  1                                                                                                      r                  2                                                                                                      r                  3                                                                                                      r                  4                                                              ]                =                              [                                                                                h                    11                                                                                        h                    12                                                                                        h                    13                                                                                        h                    14                                                                                                                    h                    21                                                                                        h                    22                                                                                        h                    23                                                                                        h                    24                                                                                                                    h                    31                                                                                        h                    32                                                                                        h                    33                                                                                        h                    34                                                                                                                    h                    41                                                                                        h                    42                                                                                        h                    43                                                                                        h                    44                                                                        ]                    ⁡                      [                                                                                t                    1                                                                                                                    t                    2                                                                                                                    t                    3                                                                                                                    t                    4                                                                        ]                                              (        1        )            
The QR decomposition applied to the channel matrix is H=QH′ expressed by the following formula.
                    Formula  2                                                                      [                                                                      h                  11                                                                              h                  12                                                                              h                  13                                                                              h                  14                                                                                                      h                  21                                                                              h                  22                                                                              h                  23                                                                              h                  24                                                                                                      h                  31                                                                              h                  32                                                                              h                  33                                                                              h                  34                                                                                                      h                  41                                                                              h                  42                                                                              h                  43                                                                              h                  44                                                              ]                =                              [                                                                                q                    11                                                                                        q                    12                                                                                        q                    13                                                                                        q                    14                                                                                                                    q                    21                                                                                        q                    22                                                                                        q                    23                                                                                        q                    24                                                                                                                    q                    31                                                                                        q                    32                                                                                        q                    33                                                                                        q                    34                                                                                                                    q                    41                                                                                        q                    42                                                                                        q                    43                                                                                        q                    44                                                                        ]                    ⁡                      [                                                                                h                    11                    ′                                                                                        h                    12                    ′                                                                                        h                    13                    ′                                                                                        h                    14                    ′                                                                                                0                                                                      h                    22                    ′                                                                                        h                    23                    ′                                                                                        h                    24                    ′                                                                                                0                                                  0                                                                      h                    33                    ′                                                                                        h                    34                    ′                                                                                                0                                                  0                                                  0                                                                      h                    44                    ′                                                                        ]                                              (        2        )            
The QR decomposition is a unique matrix transformation. A first matrix Q in the right side of the formula is a unitary matrix (the matrix product of the unitary matrix and its complex conjugate transpose is equal to a identity matrix). A second matrix H′ in the right side of the formula is an upper triangular matrix.
The complex conjugate transpose matrix of the matrix Q is expressed by Q*. When both sides of the formula (1) are multiplied by Q* from the left hand sides, the calculation is expressed by the following formula if the left side of the formula, Q*R, is expressed by Z and the right side of the formula is calculated as follows: Q*HT=Q*(QH′)T=H′T.
                    [Formula  3]                                                                      Q          *                      [                                                                                r                    1                                                                                                                    r                    2                                                                                                                    r                    3                                                                                                                    r                    4                                                                        ]                          =                              [                                                                                z                    1                                                                                                                    z                    2                                                                                                                    z                    3                                                                                                                    z                    4                                                                        ]                    =                                    [                                                                                          h                      11                      ′                                                                                                  h                      12                      ′                                                                                                  h                      13                      ′                                                                                                  h                      14                      ′                                                                                                            0                                                                              h                      22                      ′                                                                                                  h                      23                      ′                                                                                                  h                      24                      ′                                                                                                            0                                                        0                                                                              h                      33                      ′                                                                                                  h                      34                      ′                                                                                                            0                                                        0                                                        0                                                                              h                      44                      ′                                                                                  ]                        ⁡                          [                                                                                          t                      1                                                                                                                                  t                      2                                                                                                                                  t                      3                                                                                                                                  t                      4                                                                                  ]                                                          (        3        )            
The signal conversion unit 74 multiplies received signals by the complex conjugate transpose matrix of the unitary matrix, obtained through the QR decomposition, to convert the received signals into new signals. For example, the signal conversion unit 74 multiplies a received-signal matrix R by the complex conjugate transpose matrix Q* to transform the received-signal matrix R to a signal matrix Z, as expressed by the formula (3).
The MLD process unit 75 estimates transmission signals through an MLD process.
Next, details of the MLD process performed after the QR decomposition will be described. When t4 is focused on in the formula (3), z4=h44′t4 is established. When a QPSK system is used for modulation and demodulation, four types of symbol candidates for a transmission signal are obtained corresponding to the number of levels. For each of the symbol candidates, “h44′t4” is calculated and the squared Euclidean distance from z4 is calculated. It is estimated that the symbol candidate having the shortest Euclidean distance, among the calculated Euclidean distances, is most likely to be a proper transmission signal. Next, when t3 is focused, z3=h33′t3+h34′t4 is established. Therefore, for each of the combinations (4×4=16 types) of symbol candidates for t3 and t4, “h33′t3+h34′t4” is calculated and the squared Euclidean distance from z3 is calculated. The Euclidean distance for each of 16 types of symbol candidates is calculated by combining the squared Euclidean distance from z3 and the squared Euclidean distance from z4. It is estimated that the symbol candidate having the shortest Euclidean distance, among the calculated Euclidean distances, is most likely to be a proper signal. The similar processing is repeated up to t1 in the MLD process. It should be noted that distance calculation is required for 256 (fourth power of four) types of symbol candidates for t1, and in general, when symbols of C levels are sent by N transmission antennas, a large amount of calculation is required for the same number of symbol candidates as the Nth power of C. In order to reduce the amount of calculation, an M algorithm is used.
FIG. 8 is an operation diagram of a process of a conventional M algorithm.
First, four types of signal replicas C1 to C4 are created as candidates for the transmission signal t4. A signal replica is a signal temporarily set in a receiver. Specifically, the signal replica is a signal assumed to be a received signal based on an estimated channel impulse response.
Next, for each of the four types of signal replicas C1 to C4, four types of candidates for the transmission signal t3 are created as signal replicas, to set 16 types of candidates for the combination of [t3, t4]. Then, the squared Euclidean distances between each of the set transmission signal candidates and a conversion signal Z are calculated, and combinations of (t3, t4) are narrowed down in an ascending order of the calculated squared Euclidean distances. For example, in a case where M=3 as shown in FIG. 8, combinations of (t3, t4) are narrowed down to three candidates.
Next, for the three transmission signal candidates, obtained by narrowing down the combinations of (t3, t4) for the transmission signal t3, four types of signal replicas for the transmission signal t2 are created, to set 12 types of candidates for the combination of [t2, t3, t4]. Then, the squared Euclidean distances between each of the set transmission signal candidates and a conversion signal Z are calculated and combinations of (t2, t3, t4) are narrowed down (M=3) in an ascending order of the calculated squared Euclidean distances.
Finally, for the transmission signal t1, the process of the M algorithm is also applied to three transmission signal candidates obtained by narrowing down combinations of (t2, t3, t4) for the transmission signal t2, to finally determine the combination of (t1, t2, t3, t4) having the shortest squared Euclidean distance. In short, when combinations of candidates are narrowed down during the process, an optimum solution may be missed but an exponential increase in amount of calculation can be suppressed.